5d3d0929fdef42c12c52b45688df753b0a3b0462,subprojects/platform-native/src/main/groovy/org/gradle/nativeplatform/toolchain/internal/gcc/GccLinker.java,GccLinker,execute,#LinkerSpec#,54

Before Change



    @Override
    public WorkResult execute(LinkerSpec spec) {
        BuildOperationQueue<CommandLineToolInvocation> queue = buildOperationProcessor.newQueue(commandLineToolInvocationWorker, spec.getOperationLogger().getLogLocation());

        List<String> args = argsTransformer.transform(spec);
        invocationContext.getArgAction().execute(args);
        if (useCommandFile) {
            new GccOptionsFileArgsWriter(spec.getTempDir()).execute(args);
        }
        CommandLineToolInvocation invocation = invocationContext.createInvocation(
                String.format("linking %s", spec.getOutputFile().getName()), args, spec.getOperationLogger());
        queue.add(invocation);
        queue.waitForCompletion();
        return new SimpleWorkResult(true);
    }

After Change


        final CommandLineToolInvocation invocation = invocationContext.createInvocation(
                String.format("linking %s", spec.getOutputFile().getName()), args, spec.getOperationLogger());

        buildOperationProcessor.run(commandLineToolInvocationWorker, new Action<BuildOperationQueue<CommandLineToolInvocation>>() {
            @Override
            public void execute(BuildOperationQueue<CommandLineToolInvocation> buildQueue) {
                buildQueue.setLogLocation(spec.getOperationLogger().getLogLocation());
                buildQueue.add(invocation);
            }
        });

        return new SimpleWorkResult(true);
    }